Dietrich schrieb:
The code looks OK. Some remarks:
Thank you very much for your remarks, the code looks much better now.
The last question, perhaps not quite your field, but I see that you are not bad at understanding the features of atari and perhaps you can tell me what the problem might be.
When I was figuring out how to build a DisplayList for ANTIC, there were no particular problems, and in general I understood the principle of the commands. Most text modes, graphic chunks, and their combinations were displayed perfectly.
When it came to bitmap graphics and I tried to display the image in mic format, I encountered unexpected behavior.
Somewhere after about a third of the screen, a forced reinitialization occurs (?) and the picture repeats from the beginning.
It feels like there's an additional interruption and someone is rewriting the addresses.
16_.png
Then I tried to force the start address of the data for each DisplayList line and saw that there really is some garbage now.
15.png
Maybe this is some known problem and something needs to be disabled again using poke?
displayList:
.ALIGN $0400
dlist
.byte $ce, scr, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $e, $e, $e, $e,$e,$e,$e,$e,$e,$e
.byte $41, dlist
dli & vbi
_dli pha
sta $D40A // WSYNC
lda scr + 9600
sta 53274 // COLBAK
lda scr + 9601
sta 53270 // COLPF0
lda scr + 9602
sta 53271 // COLPF1
lda scr + 9603
sta 53272 // COLPF2
lda scr + 9604
sta 53273 // COLPF3
pla
rti
_vbi pha
pla
jmp $e462 // always exit deferred VBI with jump here
Thank you very much in advance